Requirement gathering and analysis:
Business Analyst (BA) will get the requirement from the client and prepare a document called Business Requirement Document (BRD) or Software Requirements Specification (SRS) Document.
Design:
Then a document will be prepared called Design Specification Document, which will give details about how the front and back end could interact.
Development:
Then Developers will develop the software by the use of any coding language and they will do a test called Unit Testing.
Testing:
Once developer coded for the functionality of the software then they will move their code or build into testing environment. Once developer moved the code into testing phase, testers will test the applications as per the flow STLC (Software Testing Life Cycle).
Deployment:
Once a program has passed the testing phase, it is ready for deployment. Here the application will be deployed in the live environment. Typically, it happens at Non-Peak Hours.
Operation and Maintenance:
Here maintenance of software can include software upgrades, repairs and fixes of the software if it breaks.
Software Testing Life Cycle is a sequence of activities conducted to perform Software Testing. There are five phases of STLC:
Each of these five phases have a specific Entry and Exit criteria. Entry criteria is the prerequisite items need to start a phase and Exit criteria is the items that must be concluded when a phase is completed.
Requirement Analysis starts with BR Document and Design Specific Document. Here we need to go through the requirement in BR Document and understand the requirements. If we have any queries means we need to mark in a query log which will be clarified by Business Analyst (BA) in walkthrough session and need to get application access from the client. So here our scope will be finalized.
With the scope in requirement analysis, we will start the test planning. Here test lead will prepare Test Plan document with inscope and outscope which means what are all the areas we are going to cover in testing. Then types of testing with what tools we are going to test will be mentioned with explanation. Then expected date will be calculated for test case preparation, test case review, execution, etc. Then resource planning like how many testers needed will be mentioned in the document. So here Test Plan document is prepared.
With Test Plan document, we will start test design. Here we will prepare test case document for our requirements using Test scenario, Test cases, Test Data, Test Step Description, Expected Result, Actual Result and Status of the test cases. Once Test case is prepared, we need to get review from our peer or lead. Then we need to get approval from Business Analyst. For Automation testing, we will do skeleton scripting. So here Test Case Document is prepared.
Once developer provide the build to us after developing, using Test case document we will start with the execution. During execution if any defect found means, we will raise it and track it to closure. Once all test cases are pass, we will attach test results with the requirements. So here Test Results are generated.
Once test execution is completed, in Sign Off phase, our testing team manager will analyze the test results and draft a mail to Sign off for the application to release.
In Defect Management Tool, we need to click the create button and then select the issue as bug. Then we need to provide the defect name in summary and provide detailed information about the bug in description by mentioning, the bug is found in which environment, platform and browser. Then we will provide the steps to reproduce with expected, actual result and Test Data. Then we will provide the priority of the bug. Then we will attach the screenshots with the bug and link the bug with the story, so that we can track it easily. Then we will assign the bug to the developer and click create button. Then we will track the bug using bug life cycle.
Defect Life Cycle: When we found a defect for the first time, we will raise it as bug. Then we will assign it to the Developer. Then Developer will open the bug and verify whether it is valid or invalid bug. If it is a valid bug means, developer will fix it. Once developer fixed the bug, they will move it to testing team for retesting. After receiving the new build, we need to Retest the bug whether it is fixed or not. If the bug is fixed, then we need to verify and close the bug. If the bug is not fixed means, then we need to reopen the bug by assigning it back to the developer. Here developers also can reject the bugs by Duplicate – if the same bug was already raised by someone. Not a bug – if developers feel it’s not a genuine bug. Deferred – if developers feel it can be fixed later on upcoming sprint or releases (mostly low priority bugs).
Equivalence Class Partitioning: Consider that we have to select an age between 18-56, Here the Valid inputs are 18-56 and the invalid inputs are <=17 and =>57. Here we have one valid and two invalid test cases.
Decision Table Technique: Login validation - Allow user to login only when both the username and password is correct. Condition1: Enter valid username and valid password and Click Login. Action1: Display home page and execute. Condition2: Enter invalid username and valid password and Click Login. Action2: Display Error message as invalid username.
State Transition Technique: Login with invalid username and password three times keeps the account page blocked until change password.
Boundary Value Analysis: If we want to enter an amount between 100 to 1000. Here we check based on boundaries for 100, we take 99,101 for valid and for 1000, we take 999,1001 as invalid.
Positive cases:
Negative cases:
Positive cases:
Negative cases:
Signup